package org.edu.modules.research.rpaper.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.edu.common.base.BaseEntity;
import java.sql.Timestamp;
import org.hibernate.validator.constraints.Length;

import java.io.Serializable;

/**
 * entity-教科研论文表
 */
@TableName
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="教科研论文表对象", description="ve_jky_paper")
public class VeJkyPaper extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableField
    @ApiModelProperty(value = "用户id(公共数据表)")
    private Integer userId;

    @TableField
    @ApiModelProperty(value = "论文编号")
    @Length(max = 255)
    private String code;

    @TableField
    @ApiModelProperty(value = "论文中文名称")
    @Length(max = 255)
    private String name;

    @TableField
    @ApiModelProperty(value = "论文英文名称")
    @Length(max = 255)
    private String engName;

    @TableField
    @ApiModelProperty(value = "论文发布时间")
    @JsonFormat(timezone="GMT+8",locale="zh",  pattern="yyyy-MM-dd")
    private Timestamp pubTime;

    @TableField
    @ApiModelProperty(value = "期刊名称")
    @Length(max = 255)
    private String journalName;

    @TableField
    @ApiModelProperty(value = "出版号")
    @Length(max = 255)
    private String pubCode;

    @TableField
    @ApiModelProperty(value = "论文简介")
    @Length(max = 4000)
    private String mark;
}
